1) Extender la pila del 16f876A en caso que lo quieras compilar
para ello:

en ccs 

TOOLS>Device>Memory>Stack

Modificar valor a 16! (no es 8)

(si te parece de utilidad)

2) la maquina de estado la determina la tabla:


SYSTEM_STATES System_table[] = { 
                     
   
  
  100,101,1,ARRANQUE_SISTEMA, 
  101,100,1,PARADA_SISTEMA, 
  101,102,2,ADVERTENCIA_SISTEMA,   
  101,103,3,ADVERTENCIA_SISTEMA, 
  101,104,4,ADVERTENCIA_SISTEMA, 
  
  102,100,5,PARADA_SISTEMA, 
  103,100,5,PARADA_SISTEMA, 
  104,100,5,PARADA_SISTEMA,
 
};

ejemplo para el estado fila 1

100 estado actual
101 estado al que paso si viene el evento 1
1 es el evento
"arranque_sistema" es la funcion a ejecutar





